package com.ruoyi.outbound.outbound.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;
import java.util.List;

/**
 * 出库单对象 outbound
 * 
 * @author zzx
 * @date 2024-02-21
 */
public class Outbound extends BaseEntity
{
    public Outbound() {
    }

    private static final long serialVersionUID = 1L;

    /** 发货通知单编码 */
    @Excel(name = "发货通知单编码")
    private String consignmentId;
    /** 出库类型 */
    private String types;

    /** 销售订单号 */
    private String clientOrderNumber;

    /** 单据日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date date;
    //出库日期
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出库日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date outboundDate;

    public Date getOutboundDate() {
        return outboundDate;
    }

    public void setOutboundDate(Date outboundDate) {
        this.outboundDate = outboundDate;
    }

    /** 客户 */
    private String clientName;


    /** 产品编码 */
    private String productId;

    /** 产品名称 */
    private String productName;

    /** 颜色 */
    @Excel(name = "颜色")
    private String colour;

    /** 规格型号 */
    private String specifications;

    /** 客户型号 */
    private String customerModel;

    public String getSpecifications() {
        return specifications;
    }

    public void setSpecifications(String specifications) {
        this.specifications = specifications;
    }

    public String getCustomerModel() {
        return customerModel;
    }

    public void setCustomerModel(String customerModel) {
        this.customerModel = customerModel;
    }

    /** 出货仓库 */
    @Excel(name = "出货仓库")
    private String warehouse;

    /** 应出库数量 */
    @Excel(name = "应出库数量")
    private Long weekdaying;

    /** 已出库数量 */
    @Excel(name = "已出库数量")
    private Long quantityShipped;

    /** 本次出库数量 */
    @Excel(name = "本次出库数量")
    private Long weekdayed;

    /** 柜号 */
    @Excel(name = "柜号")
    private String containerNumber;

    /** 删除标准 */
    private Long delFlag;
    //车辆ＩＤ
    private String bicycleIds;

    public Long getSynchState() {
        return synchState;
    }

    public void setSynchState(Long synchState) {
        this.synchState = synchState;
    }

    private Long synchState;

    public Long getAudit() {
        return audit;
    }

    public void setAudit(Long audit) {
        this.audit = audit;
    }

    //结案状态
    private Long audit;

    public String getBicycleIds() {
        return bicycleIds;
    }

    public void setBicycleIds(String bicycleIds) {
        this.bicycleIds = bicycleIds;
    }


    public String getTypes() {
        return types;
    }

    public void setTypes(String types) {
        this.types = types;
    }

    public String getClientOrderNumber() {
        return clientOrderNumber;
    }

    public void setClientOrderNumber(String clientOrderNumber) {
        this.clientOrderNumber = clientOrderNumber;
    }

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }

    public String getClientName() {
        return clientName;
    }

    public void setClientName(String clientName) {
        this.clientName = clientName;
    }

    public String getProductId() {
        return productId;
    }

    public void setProductId(String productId) {
        this.productId = productId;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getWarehouse() {
        return warehouse;
    }

    public void setWarehouse(String warehouse) {
        this.warehouse = warehouse;
    }

    public Long getWeekdaying() {
        return weekdaying;
    }

    public void setWeekdaying(Long weekdaying) {
        this.weekdaying = weekdaying;
    }

    public Long getQuantityShipped() {
        return quantityShipped;
    }

    public void setQuantityShipped(Long quantityShipped) {
        this.quantityShipped = quantityShipped;
    }
    public void setConsignmentId(String consignmentId) 
    {
        this.consignmentId = consignmentId;
    }

    public String getConsignmentId() 
    {
        return consignmentId;
    }
    public void setWeekdayed(Long weekdayed) 
    {
        this.weekdayed = weekdayed;
    }

    public Long getWeekdayed() 
    {
        return weekdayed;
    }
    public void setContainerNumber(String containerNumber) 
    {
        this.containerNumber = containerNumber;
    }

    public String getContainerNumber() 
    {
        return containerNumber;
    }
    public void setDelFlag(Long delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Long getDelFlag() 
    {
        return delFlag;
    }
    public void setColour(String color)
    {
        this.colour = color;
    }

    public String getColour()
    {
        return colour;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("consignmentId", getConsignmentId())
            .append("weekdayed", getWeekdayed())
            .append("containerNumber", getContainerNumber())
            .append("remark", getRemark())
            .append("delFlag", getDelFlag())
            .append("color", getColour())
            .append("outboundDate",getOutboundDate())
                .append("bicycleIds",getBicycleIds())
                .append("audit",getAudit())
            .toString();
    }
}
